package colecoes;

import interfaces.InterfaceVeiculo;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Vector;

import basicas.Veiculo;
import fachada.JDBC;



public class ColVeiculo implements InterfaceVeiculo {

Vector lst = new Vector();   // --> Declaracao do Vetor
	
	

	
	public void cadastrarVeiculo(Veiculo V) throws ClassNotFoundException, SQLException{
		String sql = "INSERT INTO veiculo (DescricaoVeiculo) VALUES ('"+V.getDescricaoVeiculo()+"')";
		
		System.out.println(sql);
		
		Statement conexao = JDBC.getsStatement();    //  --> estancia a conexao
		conexao.executeUpdate(sql);                  //  --> executa a string de insercao ao banco de dados
		conexao.close();                             //  --> fecha a conexao do banco de dados
	}

	
	public Vector listarVeiculo() throws ClassNotFoundException, SQLException{
		String sql = "SELECT *FROM veiculo;";
		Statement conexao = JDBC.getsStatement();
		ResultSet resultado = conexao.executeQuery(sql);                // Declaracao de uma query do banco
		
		while(resultado.next()){                                        // Enquanto a query estiver proximo
			Veiculo vei = new Veiculo();		                        // Estancia o objeto endereco
			vei.setCodVeiculo(resultado.getInt("codVeiculo"));
			vei.setDescricaoVeiculo(resultado.getString("Descrição"));
			
			lst.add(vei);                                               // Armazena o resultado da buxca no vetor
		}
		conexao.close();
		return lst;		                                                // Retorna o vetor
	}

	public Veiculo consultarVeiculo(int codigo) throws ClassNotFoundException, SQLException{
		String sql = "SELECT *FROM veiculo;";
		Statement conexao = JDBC.getsStatement();
		ResultSet resultado = conexao.executeQuery(sql);
		
		while(resultado.next()){
			Veiculo vei = new Veiculo();
			
			vei.setCodVeiculo(resultado.getInt("codVeiculo"));
			vei.setDescricaoVeiculo(resultado.getString("descricaoVeiculo"));					
			return vei;
		}
		conexao.close();
		return null;
	}

	public void removerVeiculo(int codigo) throws ClassNotFoundException, SQLException{
		String sql = "DELETE FROM veiculo WHERE codveiculo = "+codigo+"";
		Statement conexao = JDBC.getsStatement();
		conexao.executeUpdate(sql);
		conexao.close();
	}
	
}

